#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <vector>

using namespace std;

//class Solution {
//public:
//    int peakIndexInMountainArray(vector<int>& arr) {
//        int left = 0;
//        int right = arr.size() - 1;
//        while (left < right)
//        {
//            int mid = left + (right - left) / 2;
//            if (arr[mid] > arr[mid + 1] && arr[mid] > arr[mid - 1])
//            {
//                return mid;
//            }
//            else if (arr[mid] < arr[mid + 1])
//            {
//                left = mid + 1;
//            }
//            else if (arr[mid] < arr[mid - 1])
//            {
//                right = mid - 1;
//            }
//        }
//        return left;
//    }
//};

class Solution {
public:
    int peakIndexInMountainArray(vector<int>& arr) {
        int left = 0;
        int right = arr.size() - 1;
        while (left < right)
        {
            int mid = left + (right - left) / 2;
            if (arr[mid] < arr[mid + 1])
            {
                left = mid + 1;
            }
            else
            {
                right = mid;
            }
        }
        return right;
    }
};

int main()
{
	return 0;
}